Application of penalties

Genetic Algorithm optimization has two options for the application of penalties: Rank on penalty then objective and Rank on objective weighted by penalty. These two provide very different ways of ranking the portfolios. On the whole, the second option is most useful as it simply reduces the value indicator, e.g. NPV, by the penalty function.

Ranking on penalty then objectives fundamentally favors portfolios with the lowest penalties first. Ranking on objective weighted by penalty would deliver an effect as shown below. The main issue with this approach is that there is no ability to scale the penalty function in order to influence the impact that it has.

NPV Penalty Weighted NPV Rank
9,897 0.100 8,907 4
9,888 0.090 8,993 1
9,885 0.098 8,918 3
9,793 0.088 8,935 2
9,525 0.096 8,607 7
9,487 0.080 8,725 5
9,453 0.089 8,612 6
9,352 0.096 8,457 9
9,330 0.082 8,569 8
9,028 0.086 8,248 10
8,956 0.092 8,131 11
8,750 0.098 7,895 12
8,577 0.083 7,866 13

The weighted rank is calculated as follows, with NPV used as an example:

Goal (NPV) * (1 – Penalty)

Therefore if portfolio A has NPV of 100 and penalty of 0.1 and portfolio B has NPV of 200 and penalty of 0.5, their ranks will be:

Portfolio B = 200 * (1 – 0.5) = 100

Portfolio A = 100 * (1 – 0.1) = 90

Thus, portfolio B will be ranked higher than portfolio A.